Tableauの関数を全て試してみる〜論理関数編その3〜 #tableau
はじめに
こんにちは。DI部のtamaです。
当エントリはTableau Functions Advent Calendar 2017の16日目のエントリです。 昨日のエントリはTableauの関数を全て試してみる〜論理関数編その2〜でした。
今回は論理式編最後になります。
- 使用するTableauのバージョンは一貫して10.4.1です。
- 各関数の説明で引用しているのは、Tableauの公式リファレンスからの引用です。
- TableauHelp 関数
目次
検証環境
作業環境
- MacOS High Sierra 10.13.1
- Tableau 10.4.1
使用データ
- (原則)Tableau付属のサンプルスーパーストア
- (場合によって)関数グラフ描画用データ
- -1〜1の範囲で、0.01毎に値が並んでいるデータ
- 上記の値をディメンション「X軸」とし、その上に色々な関数をプロットする。
- 参考:Tableau 関数グラフの描画 | Developers.IO
IFNULL(expression1, expression2)
概要
IFNULL 関数は、結果が NULL でない場合は最初の式を返し、NULL の場合は 2 番目の式を返します。
- 基本的には最初に指定した計算式の結果を返しますが、その結果がNULLだった場合は、2番目に指定した式の結果が返ってきます。
使ってみた
Nulllが混ざっているデータを用意しました。
「数値」という項目に対して、IFNULLを設定します。
IFNULL([数値],0)
NULLの部分が0に置き換わっています。(左上のNULLは「市区町村」のNULL)
どういう時に使う?
- データの中に、NULL値が入っていると思われる項目に対して、IFNULL関数を使用すれば、NULLを回避することができ、その後の分析計算がスムーズになります。
参考文献
ISDATE(string)
概要
ISDATE 関数は、string 引数を日付に変換できる場合は TRUEを返し、変換できない場合は FALSE を返します。
- 日付に変換できる文字列を判別する関数です。
使ってみた
IFNULL関数の時と同じデータを使用します。
項目「日付」に対して、ISNULL関数を使用します。
ISDATE([日付])
日付型に変換できるかどうか、真偽が判定されました。 (なんと”20177777/12/17”は変換可能みたいです)
どういう時に使う?
- 本来、日付が入っているはずだが、もしかしたら日付以外のデータも入っているかもしれない…という項目に対して、ISDATE関数とIF文を組み合わせて使用すれば、日付とみなされたデータだけを取得することができます。
参考文献
- IsDate 関数 - Access
- 「日付型関数その2」
- こちらのエントリでも紹介しています。
ISNULL(expression)
概要
ISNULL 関数は、式が Nullの場合は TRUE を返し、式が NULL でない場合は FALSE を返します。
- その名の通り、NULLかどうか判別する関数です。
使ってみた
IFNULL関数の時と同じデータを使用します。
項目「市区町村」に対して、ISNULL関数を使用します。
NULLの値だけ、真となっています。
どういう時に使う?
- IFNULL関数とは違い、NULLかどうかを分ける関数となっていますので、この関数をフィルタとして使用し、NULL値を一気に除く…といった使い方ができると思います。
参考文献
- IsNull 関数 - Access
- Nulls Handling - String, Date, Numerical Data t… |Tableau Community
- Tableau社による、NULL値の取扱についてまとめられた記事です。
おわりに
論理関数については、今回で終了です。 組み合わせて使うことで、分析の幅が広がると思います。
次回はtamaによるTableauの関数を全て試してみる〜集計関数編その1です。お楽しみに。